package com.principles.structure.appearance;

/**
 * @Description 外观模式————要求一个子系统的外部与其内部的通信必须通过一个同一的对象进行。外观模式提供一个高层次的接口，使得子系统更易使用。 不符合开闭原则
 * @Date 2025/1/27 20:58
 **/
public class AppearancePattern {
    public static void main(String[] args) {
        Facade facade = new Facade();
        facade.prove();
    }
}

// 三个子系统
class SubFlow1{
    boolean isTrue(){
        return true;
    }
}
class SubFlow2{
    boolean isOk(){
        return true;
    }
}
class SubFlow3{
    boolean isGood(){
        return true;
    }
}
class Facade{
    SubFlow1 s1=new SubFlow1();
    SubFlow2 s2=new SubFlow2();
    SubFlow3 s3=new SubFlow3();
    boolean prove(){
        return s1.isTrue()&&s2.isOk()&&s3.isGood();
    }

}